package dominio;
import java.util.ArrayList;
public class Usuario {
    // VARIABLES INSTANCIAS
	private String nombre; 
	private int edad;
    private ArrayList<Asiento> misAsientosReservados;
   
    // GETTERS Y SETTERS 
    public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public int getEdad() {
		return edad;
	}

	public void setEdad(int edad) {
		this.edad = edad;
	}

	public ArrayList<Asiento> getMisAsientosReservados() {
		return misAsientosReservados;
	}

	public void setMisAsientosReservados(ArrayList<Asiento> misAsientosReservados) {
		this.misAsientosReservados = misAsientosReservados;
	}
    
	// CONSTRUCTOR 
    public Usuario(String nombreParam, int edadParam){
    	nombre = nombreParam; 
    	edad = edadParam; 	
    }
   	
    // COMPORTAMIENTO
    /**
     *Agrega un asiento a su lista de asientos reservados 
     */
    public void agregarAsientoAMisReservados(Asiento unAsiento){
    	this.misAsientosReservados.add(unAsiento); 
    } 
    /** 
     * Le pregunta a la empresa pasada por parametro los asientos libres 
     * para un determinado tramo de un vuelo
     */
    public ArrayList<Asiento> asientosLibres(Empresa miEmpresa, Aerolinea miAerolinea,Vuelo miVuelo,Tramo miTramo){
          return (miEmpresa.asientosLibresE(miAerolinea,miVuelo,miTramo)) ; 
    } 
    /**
     * Le pide a la empresa reservar un determinado asiento de un tramo 
     */
    public void reservarUnAsiento(Empresa miEmpresa, Aerolinea miAerolinea,Vuelo miVuelo,Tramo miTramo,Asiento miAsiento  ) {
    	miEmpresa.reservarUnAsiento(miAerolinea,miVuelo,miTramo,miAsiento);
    	this.agregarAsientoAMisReservados(miAsiento);  
    }
    /** 
     * 
     */
    public void reservarConjuntoAsientos
}
